.. _ecNet_BitSeq_GetStatus: ecNet_BitSeq_GetStatus =========================== --------------------------- SYNOPSIS ``````````` .. code-block:: none EC_EXTERN t_cmdidx(CECAT_API* ecNet_BitSeq_GetStatus)( t_i32 NetID, t_i32 MapId, t_i32*RunStatus, t_i32* RunItemIdx, t_i32* ErrCode ); DESCRIPTION ``````````````` - 구동 상태를 확인합니다. PARAMETER ``````````` - NetID : Network 번호 \ - MapId : BitSequence 기능을 사용할 MapId (0~15) \ - RunStatus : 입력 Map의 동작 상태 (1:Run) \ - RunItemIdx : 현재 Override 되고 있는 Item Index \ - ErrorCode : 이 매개 변수를 통하여 현재의 에러 코드를 반환합니다. 단, 이 매개 변수에 NULL 을 전달하면 에러 코드를 반환하지 않습니다. RETURN VALUE ````````````` - 함수 수행의 성공 여부를 반환합니다. .. csv-table:: :widths: 10 85 :header-rows: 1 :stub-columns: 0 Value, Meaning 0, 함수 수행에 실패 하였음을 의미합니다. else, 함수 수행에 성공 하였음을 의미합니다. REFERENCE ````````````` - :ref:`ecNet_BitSeq_AllocBuf`, :ref:`ecNet_BitSeq_SetData`, :ref:`ecNet_BitSeq_GetData`, :ref:`ecNet_BitSeq_GetStatus`, :ref:`ecNet_BitSeq_Stop` EXAMPLE ````````` .. code-block:: c++ :linenos: :emphasize-lines: 5 int NetID = 0; // 0번 Network ID 사용 int MapId = 0; // 0번 MapId 사용 t_cmdidx idx; // 2개의 Item Buffer를 할당합니다 idx = ecNet_BitSeq_AllocBuf(NetID, MapId, 2, &err); // 0번 Item을 설정합니다 ByteOffset:0 Mask:0xFF, Data:0xAA idx = ecNet_BitSeq_SetData(NetID, MapId, 0, 0, 0xFF, 0xAA, &err); // 1번 Item을 설정합니다 ByteOffset:0 Mask:0xFF, Data:0x55 idx = ecNet_BitSeq_SetData(NetID, MapId, 1, 0, 0xFF, 0x55, &err); // BitSequence 기능을 동작시킵니다. 0번 Item과 1번 Item이 통신 Cycle마다 Override 됩니다. idx = ecNet_BitSeq_Run(NetID, MapId, 1, 0, &err); Sleep(1000); // BitSequence 기능을 정지합니다 idx = ecNet_BitSeq_Stop(NetID, MapId, 0, &err);